/**
 * 实现一种猫狗队列的结构，要求如下：
 * - 用户可以使用add方法将猫类或者狗类的实例加入队列
 * - 用户可以通过调用pollAll方法，将队列中所有实例按照进入队列的先后顺序依次弹出队列
 * - 用户可以通过调用polDog方法，将队列中所有狗类的实例按照进入队列的先后顺序依次弹出队列
 * - 用户可以通过调用pollCat方法，将队列中所有猫类的实例按照进入队列的先后顺序依次弹出队列
 * - 用户可以通过调用isEmpty方法，判断队列中是否还有猫类或者狗类的实例
 * - 用户可以通过调用isDogEmpty方法，判断队列中是否还有狗类的实例
 * - 用户可以通过调用isCatEmpty方法，判断队列中是否还有猫类的实例
 * 
 */
package com.yan.programercode.chapter_1.question_4;